package com.cjl.generic.test;

public class Remove {
    public static void main(String[] args) {

    }
}
//桥接方法
class Node<T>{
    public T data;

    public Node(T data) {
        this.data = data;
    }

    public void setData(T data) {
        this.data = data;
        System.out.println("Node.setData");
    }
}

//class Node{
//    public Object data;
//
//    public Node(Object data) {
//        this.data = data;
//    }
//
//    public void setData(Object data) {
//        this.data = data;
//        System.out.println("Node.setData");
//    }
//}

class MyNode extends Node<Integer>{

    public MyNode(Integer data) {
        super(data);
    }

    @Override
    public void setData(Integer data) {
        super.setData(data);
        System.out.println("MyNode.setData");
    }
}

//class MyNode extends Node<Integer>{
//    public MyNode(Integer data) {
//        super(data);
//    }

//    public void setData(Object data) {
//        setData((Integer)data);
//    }
//
//    public void setData(Integer data) {
//        super.setData(data);
//        System.out.println("MyNode.setData");
//    }
//}
